package tech.aistar.design.singleton;

/**
 * 本类用来演示: 懒汉模式 - 多线程不安全的
 *
 * @author: success
 * @date: 2022/7/22 3:40 下午
 */
public class Singleton02 {
    //2. 提供本类的唯一的实例作为它的静态属性
    private static Singleton02 instance;

    //1. 私有化构造 - 为了不让外界去new
    private Singleton02(){
        //初始化的业务...
        System.out.println("构造方法...");
    }

    //3. 提供一个公开的方法来返回这个类的唯一实例
    public static Singleton02 getInstance(){
        return instance==null?instance=new Singleton02():instance;
    }

    public static void main(String[] args) {
        Singleton02 s1 = Singleton02.getInstance();
        Singleton02 s2 = Singleton02.getInstance();
        System.out.println(s1 == s2);
    }
}
